Role-based portal to a workplace system

ABSTRACT

A method includes storing a plurality of role data entries on a storage device coupled to a computer system, each role data entry corresponding to an assigned role of at least one of a plurality of individuals, each role corresponding to an enterprise with which the individual is associated and corresponding to a set of resources accessible through the computer system, receiving at the computer a resource request from one of the individuals, determining whether the requested resource is included in the set of accessible resources corresponding to the assigned role of the requesting individual, and selectively permitting access to the requested resource if the resource is determined to be in the set of resources corresponding to the assigned role of the requesting individual.

CLAIM OF PRIORITY

This application claims priority under 35 USC §119(e) to U.S. patentapplication Ser. No. 60/343,285, filed on Dec. 20, 2001, the contents ofwhich are incorporated by reference.

BACKGROUND

The following description relates to a role-based portal to a workplacesystem.

Individuals typically produce goods in specialized workplaces, i.e., aweaver's workplace is different than a blacksmith's, which, in turn, isdifferent than a boat builder's. However, there are usually somesimilarities among workplaces. For example, many workplaces include aplace to store materials, tools and records about their use ofmaterials, and/or goods produced. The increased use of computertechnology by contemporary businesses has altered the conventionaldefinition of “workplace” for many individuals.

SUMMARY

According to an aspect of this invention, a method includes storing aplurality of role data entries on a storage device coupled to a computersystem, each role data entry corresponding to an assigned role of atleast one of a plurality of individuals, each role corresponding to anenterprise with which the individual is associated and corresponding toa set of resources accessible through the computer system, receiving atthe computer a resource request from one of the individuals, determiningwhether the requested resource is included in the set of accessibleresources corresponding to the assigned role of the requestingindividual, and selectively permitting access to the requested resourceif the resource is determined to be in the set of resourcescorresponding to the assigned role of the requesting individual.

One or more of the following features may also be included: The methodmay include the item of information corresponding to at least one of anitem of information that is displayable on a window of a display device,an application executable on a user device, and an address link toinformation stored on a second computer. The method may further includestoring at least one item of the accessible information on the storagedevice coupled to the computer. The method may include at least one itemof the accessible information corresponding to a link address, the linkaddress corresponding to an item of information stored on a secondcomputer. The method may further include displaying the requested itemof information on a display window of a user device. The method mayfurther include detecting a selection of an active region on the windowprior to sending a request for the item of information, wherein therequest corresponds to the detected selection. The method may furtherinclude displaying the requested item of information on the displaywindow. The method may further include displaying the requested item ofinformation on an associated window on the display device. The methodmay further include relating a first object displayed on the window to asecond object displayed on the window, wherein relating the first objectto the second object causes a further display of information on thewindow. The method may include at least one of the first object andsecond object being icons displayable on a display device of a computer.The method may further include assigning a common set of information toa plurality of assigned roles, each role corresponding to at least oneindividual. The method may further include detecting a change to an itemin the common set of information, and sending a message to at least oneof the other plurality of individuals to indicate the detected change.The method may further include displaying an up-dated display windowthat reflects the detected change to the item of information. The methodmay include controlling access to the common set of information by afirst individual assigned a controlling role. The method may furtherinclude accessing the set of information from a plurality of userdevices, each user device having a role-based portal window. The methodof displaying the window may include executing a browser application,the browser application controlling a role-based portal windowdisplayable on the user device. The method of accessing the subset ofinformation may include displaying a customized display window includingat least one item of the subset of information accessible to theindividual. The method may include having the customized display windowcorresponds to a previously customized display window. The method mayfurther include accessing the information by logging on to the systemwith a unique identifier corresponding to a one of the plurality ofindividuals. The method of logging on to the system may includeexecuting a single sign on application. The method may further includecontrolling access by the plurality of individuals to the common set ofinformation by a first individual. The method may include having thefirst individual having access control to the common set of informationis an employee of a business, and a second one of the plurality ofindividuals is a non-employee.

According to a further aspect of this invention a system includes afirst computer coupled to a storage device, the storage device holding aplurality of role data entries, each role data entry corresponding to anassigned role of at least one of a plurality of individuals, each rolecorresponding to a subset of information accessible through the firstcomputer, a user device coupled to communicate with the first computer,the user device having a display device displaying a role-based portalwindow, the role-based portal window usable to send a request to thefirst computer for an item of information, and a role-based filterapplication executable by the first computer to determine whether theitem of information requested is included in the subset of accessibleinformation corresponding to the assigned role of the requestingindividual, the role-based filter application to determine if that itemof information is included in the subset of information corresponding tothe assigned role of the requesting individual.

One or more of the following features may also be included: The systemmay further include a second computer coupled to communicate with thefirst computer and the user device, wherein at least one item of theaccessible information corresponds to a link address, the link addresscorresponding to an item of information stored on the second computer.The system may include having a common set of information assigned to aplurality of assigned roles, each role corresponding to at least oneindividual, the role-based filter application executable to detect achange to an item in the common set of information by a first one of theplurality of individuals and send a message to at least one user devicecorresponding to a second of the plurality of individuals to indicatethe detected change.

According to a further aspect of this invention a method of facilitatingaccess to resources in a collaborative environment, the method includingreceiving a request from a user to access a resource associated with thecollaborative environment, determining the requesting user's enterpriseaffiliation, and selectively providing access to the requested resourcebased on the determination of the requesting users enterpriseaffiliation.

One or more of the following features may also be included: The methodmay include having the resource being at least one of a tool,application, file, file link and document. The method may furtherinclude displaying the requested resource on a display window of a userdevice. The method may further include assigning a common set ofresources to a plurality of assigned roles, each role corresponding toat least one individual. The method may further include controllingaccess to the common set of resources by a first individual assigned acontrolling role. The method may further include accessing the set ofresources from a plurality of user devices, each user device having arole-based portal window. The method may include having the firstindividual having access control to the common set of resources is anemployee of a business, and a second one of the plurality of individualsis a non-employee.

Using a workplace system, and limiting access to tools/informationthrough role-based portals provides several advantages. For example, theproductivity of an individual may be increased by limiting the set ofaccessible tools and information to those considered most relevant forcompletion of a role. The efficient use of the resources of theworkplace system may be increased, for example, by allowing multipleindividuals to perform different roles where each individual may haveaccess to different tools and/or information based upon their assignedrole(s). The security may be increased since individuals are selectivelyallowed limited access to the tools and information on the system.Finally, the time required to update tools and information may bereduced and the process simplified, e.g., an update need only be made toa single tools/information file 14 and not to multiple files which maybe stored on disparate systems.

The details if one or more embodiments are set forth in the accompanyingdrawings and the description below. Other features and advantages willbe apparent from the description below. Other features and advantageswill be apparent from the description and drawings, and from the claims.

DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a workplace system.

FIG. 2 is a diagram of a role-based portal window.

FIG. 3 is a block diagram of computer hardware on which processescorresponding to FIGS. 1 and 2 may be implemented.

DESCRIPTION

Referring to FIG. 1, a workplace system 10 includes a server computer 12and a personal computer 20 coupled to communicate with each other on anetwork link 16. Server computer 12 is coupled to a data storage device18 used to store resources such as tools and information files 14,project folder data 21, and assigned role files 19. A resource is anytool, application, file, document or other item of information to beaccessed. A resource is any tool, application, file, document or otheritem of information to be accessed. In this example, “tools” refers toapplications that may be executed on a user device, such as personalcomputer 20, and “information” refers to data that may be displayed astext or images, e.g., on a role-based portal window 22 of a displaydevice. An assigned role file 19 includes a plurality of data entries,each entry including data that represents information for an assignedrole and/or an identity of an individual assigned to that role. Inoperation, an individual interacts with a role-based portal window 22 onuser device 20 to request access to specific tools and/or informationfrom the tools and information file 14 on the server computer 12. Arole-based filter component 15 (e.g., an executable application onserver computer 12) uses data from assigned role data file 19 todetermine whether the specific tools and/or information requested may beaccessed by a particular individual based upon his/her identity andassigned role(s). If access is granted, those tools and/or informationdetermined accessible may be retrieved by the individual on user device20, and displayed and/or executed on their role-based portal window 22.

“Portal” generally refers to a starting point for a individual to gainaccess to tools and/or information from file 14 on workplace system 10.A portal display component 23 executed on the user device 20 can be usedto control the role-based portal window 22. In an implementation, therole-based portal window 22 is implemented as a browser applicationexecuting on a user device that, when initially launched, displays a“home page” window that provides the user with easy access to acollection of various tools and resources.

“Role-based” refers to selectively granting limited access to toolsand/or information from file 14 based upon an assigned role(s) of anindividual. In more detail, in order for an individual to fulfill arole, he or she must undertake and perform specific activities andtasks. An individual's role(s) is not necessarily synonymous with a jobdescription. For example, an employee of a business may fulfill morethan one role within the business organization, e.g., the individual maybe assigned to multiple roles at the same time, for example, a role of adesign engineer on a first project and a role of project manager on asecond project. Therefore, the tools and information needed to performtasks may differ according to each assigned role. Using workplace system10, and limiting access to tools/information through role-based portalsprovides several advantages. For example, the productivity of anindividual may be increased by limiting the set of accessible tools andinformation to those considered most relevant for completion of a role.The efficient use of the resources of workplace system 10 may beincreased, for example, by allowing multiple individuals to performdifferent roles where each individual may have access to different toolsand/or information based upon their assigned role(s). The security maybe increased since individuals are selectively allowed limited access tothe tools and information on system 10. Finally, the time required toupdate tools and information may be reduced and the process simplified,e.g., an update need only be made to a single tools/information file 14and not to multiple files which may be stored on disparate systems.

Workplace system 10 may be coupled to Internet 60. Internet 60 is anexample of a “wide area network” (WAN), i.e., a network ofinter-connected computers that may communicate with one another, forexample, transmitting data, messages and application information to oneanother. In this example, an external server computer 70 and a secondpersonal computer 30 are coupled to Internet 60. External servercomputer 70 is coupled to a storage device 72 that is used to storeexternal tools/information files 82. Therefore, in this implementation,the tools/information accessible to an individual through a role-basedportal may include “internal”, or local, tools and information 14 (e.g.,tools/information stored on storage device 18) and may also include“external”, or remote, tools and information 82 (e.g., tools/information82 stored on storage device 72). The personal computer 30 also may beused to execute the portal display component 23, e.g., usable by anindividual to display a role-based portal window on window 32 and torequest tools/information from role-based filter component 15.

“Tools” may refer to an available service from an internal or externalcomputer system, for example, a tool may refer to a payroll service, abenefits management service, a billing service, etc. As a furtherexample, an individual whose assigned role includes shipping packagesmight have access to a courier company's service on Internet 60. Thecourier company service may allow the individual to execute and interactwith an application that allows scheduling pickup and/or delivery of apackage, and may also allow the individual to acquire information aboutwhere the package is, package volume shipped, and/or package volumedelivered to a customer, etc. If the assigned responsibilities of anindividual role include making travel reservations, his or herrole-based portal may, for example, have access to a travel service(e.g., an application) provided by a travel management service throughInternet 60. The travel service may allow the employee to execute andinteract with an application that provides information about prices,travel times, and routes, for example. In response to inputs/selectionsmade by the individual, the travel management service may processtickets, deliver them (or confirm for e-ticketing), provide travelsummary information for individuals, groups, offices, etc.

Role-based filter component 15 may include instructions that whenexecuted by server computer 12 determine available tools/information 14based on an industrial category corresponding to a role. For example, apurchasing manager for a chemical company may be granted access totools/information related to the chemical industry but not given accessto tools/information related to the auto industry. Role-based filtercomponent 15, therefore, may reduce and/or focus the type of informationthat is accessible on a role-based portal based upon an industrialcategory.

The role-based portal window 22 may be implemented as a browserapplication having “drag and relate” capability such as described inU.S. Pat. No. 5,848,424, which is incorporated by reference. Drag andrelate refers to relating a first object (e.g., a first icon) to asecond object (e.g., a second icon) by dragging the first icon onto thesecond object. For example, on a role-based portal window for a projectmanager, a first icon may be presented that represents a design engineerassigned to a project, and a second icon may be presented thatrepresents a travel service. The project manager may “drag” the designengineer icon onto the travel service icon, which will cause a displayof data corresponding to the design engineer's use of the travelservice.

An entity such as a business or a single individual may control accessto workplace system 10. For example, the entity may have sole control ofthe content and access to files stored on storage device 18. Access toworkplace system 10 may be granted both to employees and non-employeesof a business using role-based portals to establish a “collaborativeworkplace”. Collaborative workplace refers to an environment that may beused, for example, by both employees and non-employees to perform tasksrelated to a common product or process. The collaborative workplace mayreduce the cost of product development, e.g., by reducing the time andcomplexity of transferring information between multiple collaborators.Training costs may be reduced by providing a relatively easy to usecommunications interface, that is, collaborators would not need to knowhow to use a host of different systems to access tools/information file14, or to communicate with other collaborators. The collaborativeworkplace may also reduce the cost of travel especially on projectswhere a relatively large amount of interaction is required betweenproject participants.

In some cases, the tools and information that are available to a projectmay be selectively available to each project participants based on anumber of factors, for example, based on an assigned role(s) and whetheror not the participant is an employee of the entity controlling thecollaborative workplace.

The following describes an exemplary use of a collaborative workplacethat includes the use of role-based portals. In this example, assumethat a manufacturer (a “business”) of anti-lock brake systems (ABS) hasbeen awarded a contract from a client business to design a brake systemfor a new automobile. A project manager (e.g., an employee of thebusiness controlling workplace system 10) is assigned a management roleon the ABS project. Collaborating participants (“project participants”)on the ABS project include the project manager, the client business andthree design engineers (“collaborating engineers”). The three designengineers are from three other companies (“business partner companies”).Each business partner company is are developing a sub-assembly for theABS project. Therefore, a data entry corresponding to the assignedrole(s) of each project participant is stored in assigned role file 19.

FIG. 2 illustrates an exemplary role-based portal window 22 displayed ona user device of a project manager. Role-based portal window 22 includeslaunching areas 90 and 91 that the project manager may use to accesstools and/or information. Window 22 includes a “project selector”display area 92 displaying a variety of project tracking information. Onhis role-based portal window 22, the project manager may create aproject folder (not shown) by selecting a collaboration option 93 oflaunching area 25. The project folder is used to hold and displayrelevant product information, for example, a parts list(s), a computeraided design (CAD) model(s) for sub-assemblies, an overall project plan,and a client's specification document(s). Data placed in the projectfolder by the project manager may be stored as project folder file 21 onstorage device 18. Data stored in project folder file 21 is madeselectively accessible to the collaborating engineers through their ownrole-based portals. Different project participants may have access todifferent subsets of the data depending on role, security level, companyaffiliation and the like.

The project manager may select an active area 94 to “publish” theproject folder to the other project participants, for example, bysending an e-mail to one or more of the project participants confirmingtheir participation in the client ABS project and outlining the processfor communicating with one another. The e-mail may include a link to theproject folder where the project information may be accessed (e.g.,stored). The link may be a link to a web-site associated with workplacesystem 10 that includes information in project folder file 21. Projectparticipants may use a browser application (e.g., portal displaycomponent 23) to request access to the information stored in projectfolder file 21 through their role-based portal(s) and role-based filtercomponent 15, e.g., to access project information selectively based ontheir assigned role(s).

The project manager may create a proposal for the ABS system by using anengineering application such as a CAD (computer-aided design) system andmay send the proposal to the collaborating engineers. One or more of thecollaborating engineers may modify the proposal to conform the design toaccomodate a particular component for which they are responsible.Modifications made by the engineers may be sent to the project folderfile 21 and, thus made available to the other collaborating engineersand to the project manager. Because all collaborating parties can viewthe same design documents, meetings can be held “online” to discussdesign issues.

The project manager's role-based portal may include tool(s) to trackproject progress (a “project selector” application), or review andcompare work submitted by a project participant. For example, theproject manager's role-based window 22 may include a status inbox 95 todisplay incoming messages, and/or a due date display area 96 to trackdue dates on the projects assigned to him/her. Using the projectselector window 92, the project manager may select a display thatprovides an overview of all projects assigned to him/her, for example bydisplaying a “project monitor” area 97. Project monitor area 97 may showstatus, cost, and milestone tracking, for example. Portal displaycomponent 23 may include drag-and-relate capabilities. In this case, theproject manager may interact with displayed icons to cause projectdetails (e.g., corresponding to changes made by a party collaborating ona project) to be displayed on portal window 22.

The role-based portal of each collaborating participant provides a wayof accessing project information. A change that affects projectinformation may be used to trigger an “event”, for example, an event maycause server computer 12 to send updated or changed information to oneor more project participants. Therefore, each event may be used tocoordinate a flow of information between the project participants. Thisway of coordinating the flow of information between participants mayallow for faster response to changes and/or more accurate planning,which may reduce costs and/or improve service to the client business.

As described above, a role-based portal window for each projectparticipant may display a common set of information, for example,information from project folder file 21. Each project participant maycustomize the tools and/or information displayed on their own role-basedportal window. “Customize” refers to the ability of an individual tochange the presentation and/or content of tools/information in his orher role-based portal window. For example, the portal window may includean active area(s) that the individual may select (or use to input data)to cause a change to how the portal window displays tools/information.

Each role, e.g., each entry in assigned role data file 19, is linked toa set of tools and/or information that is considered helpful to anindividual assigned to the activities associated with that role. A rolemay be assigned for a finite duration, e.g., set to expire at a specifictime/date.

As described above, tools and information accessible to an individualmay be stored internally or externally to system 10. In some cases,tools and information file 14 may include links to storage locationselsewhere on system 10, or on an external computer system. Therefore,system 10 allows an individual to request tools and/or information froma single source, e.g., system 10, rather than having to request toolsand/or information from the various systems where they actually arestored. In this case, the individual is presented with a single unifiedpackage of available tools/information through a role-base portal thatis associated with his/her assigned role. Moreover, when a tool orinformation is moved from a first computer (or a first storage device)to another computer (or another storage device), server computer 12 mayupdate the links associated with the tools/information that are affectedby the move, therefore, the individual does not need to deal with theaffected tool/information.

In an implementation of system 10, a role administrator is givenauthority to assign roles, and/or make changes to the tools/informationassociated with a role. In this case, individuals other than the roleadministrator cannot change an assigned role and thereby accessrestricted tools and/or information.

An individual may log on to workplace system 10 by using “SingleSign-on” (SSO) software. Using SSO, an individual needs to log on onlyonce to workplace system 10 to access tools/information 14. SSO softwaremay also provide authentication of messages sent between a individual'srole-based portal and server computer 12.

An individual's access to workplace system 10 typically is not limitedto using personal computer 20. For example, an individual may use awireless device 54 coupled to communicate with server computer 12through a wireless gateway 52 coupled to Internet 60. As anotherexample, an individual may use a personal computer 30 coupled tocommunicate with server computer 12 through Internet 60. An individualassigned a role in assigned role data file 19 may accesstools/information from tools/information file 14 by using a devicehaving Internet access and capable of running a browser application.

Referring to FIG. 3, user devices 20, 30 and 54, and/or server computer12 in system 10 may include a processor 210, a memory 212, and a storagemedium 214 (see view 216). Storage medium 214 stores data 218 fordescription documents and also stores machine-executable instructions220 that are executed by processor 210 out of memory 212 to perform userdevice functions (for example, process 100), and/or host computerfunctions (for example, host process 200). Furthermore, each user deviceand host computer may include an operating system.

User devices and/or the host computer need not be limited to use withthe hardware and software of FIG. 3. They may find applicability in anycomputing or processing environment. They may be implemented inhardware, software, or a combination of the two. They may be implementedin computer programs executing on programmable computers or othermachines that each include a processor, a storage medium readable by theprocessor (including volatile and non-volatile memory and/or storagecomponents), at least one input device, and one or more output devices.Program code may be applied to data entered using an input device (e.g.,a mouse or keyboard) to perform applications and to generate outputinformation.

Each computer program may be stored on a storage medium/article (e.g.,CD-ROM, hard disk, or magnetic diskette) that is readable by a generalor special purpose programmable computer for configuring and operatingthe computer when the storage medium or device is read by the computerto perform applications.

As used herein, the term “computer system” refers to a physical machinehaving one or more processing elements and one or more storage elementsin communication with the one or more of the processing elements. Eachof the various user devices and computers described herein include anoperating system. The operating system is software that controls thecomputer system's operation and the allocation of resources. The term“process” or “program” refers to software, for example an applicationprogram that may be executed on a computer system. The applicationprogram is the set of executable instructions that performs a taskdesired by the user, using computer resources made available through theoperating system.

A user may interact with a personal computer or wireless device (a “userdevice”) to send and receive messages and data from a computer network.Typically the user device includes a visual display device fordisplaying text and images, and a graphical user interface (GUI) toallow the user to interact with an operating system running on the userdevice. Many GUI's cause the display of a “desktop” on the displaydevice, i.e., where the desktop refers to a graphical work surfaceanalogous to a surface of a desk. Typically the desktop displays iconsrepresenting programs, files and resources available to the user. Assuch, the desktop acts as a launching point for running applicationprograms, opening documents or files, displaying menus, and initiatingoperating system services.

The GUI may also use a windowing environment that presents the user withspecially delineated areas called windows on the display device, each ofwhich is dedicated to a particular application program, file ordocument. Windows that overlay the desktop in the GUI are analogous topapers or files laying on top of the desk. Typically, the windows may bere-sized, moved around on the display, and stacked so as to overlayother windows. The windowing environment may also allow windows to beincreased to a full-screen display or minimized, meaning the window isreduced to and denoted by an icon.

A typical display window includes one or more “active” regions or icons.The active regions are associated with instructions to be executed uponthe occurrence of an action by the user to select the active region(e.g., a mouse “click” on an active area). For example, instructionsassociated with an active region may cause a jump to a specifiedlocation upon the occurrence of a mouse-click within the active region.Other events can also cause the execution of instructions. Inparticular, a detected movement of a mouse and/or an entry of a mousepointer into an active region (in either case, with or without a clickof a mouse button) are also events that may be used to trigger theexecution of instructions associated with that region.

The systems and techniques described here need not be limited to thespecific details described above. For example, data stored intools/information file 14 may represent addresses or “links” to otherdata or addresses stored on workplace system 10, or external to system10.

Other embodiments are within the scope of the following claims.

1. A method comprising: storing a plurality of role data entries on a storage device coupled to a computer system, a role data entry corresponding to an assigned role of at least one of a plurality of individuals, the assigned role corresponding to an enterprise with which the individual is associated, and the assigned role corresponding to a set of resources accessible through the computer system; receiving at the computer a resource request from one of the individuals, the resource request indicating a requested resource; determining based on an assignment of the assigned role to the requesting individual whether the requested resource is included in the set of accessible resources corresponding to the assigned role of the requesting individual, the assignment of the assigned role being defined prior to receiving the resource request; and selectively permitting access to the requested resource if the resource is determined to be in the set of resources corresponding to the assigned role of the requesting individual; and, wherein: the requested resource is a shared resource from a common set of resources that are accessible to other individuals; access to the shared resource for the other individuals is based on an assignment of a second role to the other individuals, the second role being the assigned role of the requesting individual or another role; a first combination of shared resources accessible to the requesting individual is the same as a second combination of shared resources accessible to another individual having same assigned roles; and the first and second combination are the same due to selective permission of access being based on assignments of roles, and the assigned roles of the requesting individual and the another individual being the same.
 2. The method of claim 1, wherein the requested resource corresponds to at least one of an item of information that is displayable on a window of a display device, an application executable on a user device, and an address link to information stored on a second computer.
 3. The method of claim 1, further comprising: storing at least one of the accessible resources on the storage device coupled to the computer.
 4. The method of claim 1, wherein at least one item of the accessible resources corresponds to a link address, the link address corresponding to an item of information stored on a second computer.
 5. The method of claim 1, further comprising: displaying the requested resource on a display window of a user device.
 6. The method of claim 5, further comprising: detecting a selection of an active region on the display window prior to sending the request for the requested resource, wherein the request corresponds to the detected selection.
 7. The method of claim 6, further comprising: displaying the requested resource on the display window.
 8. The method of claim 6, further comprising: displaying the requested resource on an associated window on the display device.
 9. The method of claim 5, further comprising: relating a first object displayed on the display window to a second object displayed on the display window, wherein relating the first object to the second object causes a further display of information on the display window.
 10. The method of claim 9, wherein at least one of the first object and second object are icons displayable on a display device of a computer.
 11. The method of claim 5, wherein displaying the requested resource on the display window comprises: executing a browser application, the browser application controlling a role-based portal window displayable on a user device.
 12. The method of claim 1, further comprising: assigning a common set of information to a second plurality of assigned roles, each of the second assigned roles corresponding to at least one individual in the plurality of individuals.
 13. The method of claim 12, further comprising: detecting a change to an item in the common set of information; and sending a message to at least one other individual to indicate the detected change.
 14. The method of claim 13, further comprising: displaying an updated display window that reflects the detected change to the item.
 15. The method of claim 12, wherein access to the common set of information is controllable by a first individual assigned a controlling role.
 16. The method of claim 12, further comprising: accessing the common set of information from a plurality of user devices, each user device having a role-based portal window.
 17. The method of claim 12, further comprising: controlling access by the plurality of individuals to the common set of information by a first individual.
 18. The method of claim 17, wherein the first individual has access control to the common set of information and the first individual is an employee of a business, and wherein a second one of the plurality of individuals is a non-employee.
 19. The method of claim 1, wherein accessing a subset of the resources comprises displaying a customized display window including at least one item of the subset of resources accessible to the individual, the method further comprising: accessing the subset of resources, the subset of resources comprising the requested resource.
 20. The method of claim 19, wherein the customized display window corresponds to a previously customized display window.
 21. The method of claim 1, further comprising: accessing the requested resource by logging on to the computer system with a unique identifier corresponding to a one of the plurality of individuals.
 22. The method of claim 21, wherein logging on to the computer system comprises: executing a single sign on application.
 23. A system comprising: a first computer coupled to a storage device, the storage device holding a plurality of role data entries, a role data entry corresponding to an assigned role of at least one of a plurality of individuals, the assigned role corresponding to a subset of information accessible through the first computer; a user device coupled to communicate with the first computer, the user device having a display device displaying a role-based portal window, the role-based portal window usable to send a request to the first computer for an item of information; and a role-based filter application executable by the first computer to determine based on an assignment of the assigned role to a requesting individual whether the item of information requested is included in the subset of accessible information corresponding to the assigned role of the requesting individual, the assignment of the assigned role being defined prior to receiving the request from the requesting individual; wherein: the requested item of information is a shared resource from a common set of resources that are accessible to other individuals; access to the shared resource for the other individuals is based on assignment of a second role to the other individuals, the second role being the assigned role of the requesting individual or another role; a first combination of shared resources accessible to the requesting individual is the same as a second combination of shared resources accessible to another individual having same one or more assigned roles; and the first and second combination are the same due to selective permission of access being based on assignments of roles, and the assigned one or more roles of the requesting individual and the another individual being the same.
 24. The system of claim 23, further comprising: a second computer coupled to communicate with the first computer and the user device, wherein at least one item of the subset of information accessible through the first computer corresponds to a link address, the link address corresponding to an item of information stored on the second computer.
 25. The system of claim 23, wherein a common set of information is assigned to a plurality of assigned roles, each of the roles corresponding to at least one individual, and the role-based filter application is executable to detect a change to an item in the common set of information by a first one of the plurality of individuals and send a message to at least one user device corresponding to a second of the plurality of individuals to indicate the detected change.
 26. A method of facilitating access to resources in a collaborative environment, the method comprising: receiving a request from a user to access a resource associated with the collaborative environment, the requested resource being a shared resource from a common set of resources that are accessible to other users, and access to the shared resource for the other users being based on assignment of a first role to the other users, the first role being the same or different from a second role assigned to the requesting user; determining an enterprise affiliation of the requesting user, the enterprise affiliation being defined prior to receiving the resource request; and selectively providing access to the requested resource based on the determination of the enterprise affiliation and assignment of roles; wherein: a first combination of shared resources accessible to the requesting user is the same as a second combination of shared resources accessible to another user having a same one or more assigned roles; and the first and second combination are the same due to selective provision of access being based on assignment of roles, and the assigned roles of the requesting user and the another user being the same.
 27. The method of claim 26, wherein the resource is at least one of a tool, application, file, file link and document.
 28. The method of claim 26, further comprising: displaying the requested resource on a display window of a user device.
 29. The method of claim 26, further comprising: assigning a common set of resources to a plurality of assigned roles, each role corresponding to at least one individual.
 30. The method of claim 29, further comprising: controlling access to the common set of resources by a first individual assigned a controlling role.
 31. The method of claim 30, wherein the first individual is an employee of a business, and a second one of the plurality of individuals is a non-employee.
 32. The method of claim 29, further comprising: accessing the set of resources from a plurality of user devices, each user device having a role-based portal window. 